PRJ 04 10과탐2-02-01 첨단 과학기술 🔧 IoT

마이크로컨트롤러 데이터 수집

"손톱만 한 칩으로 어떻게 세상을 측정할까?"

스마트폰·자동차·드론·우주선 — 모든 첨단 기술의 심장은 마이크로컨트롤러(MCU)다. 아두이노·라즈베리파이로 빛·소리·움직임·온도를 실시간 측정하며, 첨단 기술 속에 담긴 기초 과학 원리를 추론한다.

아두이노와 브레드보드
Arduino + Sensors
~ 첨단의 시작

첨단 기술 ≠ 마법, 기초 과학의 영리한 조합

자율주행차의 LIDAR? 빛의 직진과 반사(중학 광학)다. 스마트워치의 심박 측정? 혈액이 빛을 흡수하는 광학 원리. 드론의 비행? 뉴턴 운동법칙. AI 음성인식? 주파수 분석(푸리에).

이 프로젝트에서는 마이크로컨트롤러(MCU)와 6가지 센서로 4가지 첨단 기술의 작동 원리를 직접 체험한다. "이 기술 안에 어떤 과학이 숨어 있나?"를 묻고 답하는 시간.

PHASE 01

탐구할 첨단 기술 4가지 — DISCOVER

기술 → 과학 원리 추론

아래 4개 첨단 기술 중 모둠별로 1~2개를 선택해 MCU로 그 핵심 원리를 직접 구현한다.

🚗
자율주행 (LIDAR)
~ 빛의 반사·도착 시간

레이저를 쏘고 돌아오는 시간으로 거리 측정. HC-SR04 초음파 센서로 같은 원리 구현 가능.

스마트워치 (심박)
~ 혈액의 빛 흡수

녹색 LED + 광센서. 혈관 부피 변화로 심박 검출. MAX30100 센서로 구현.

🌐
IoT 환경 감지
~ 열·습도·압력 측정

스마트홈·스마트팜의 기초. DHT22·BMP280으로 직접 체험.

🎤
AI 음성인식 (FFT)
~ 음파 주파수 분석

마이크로 소리를 캡처 → 푸리에 변환 → 주파수 패턴. MAX4466 + FFT 라이브러리.

PHASE 02

마이크로컨트롤러란 — DESIGN

아두이노 vs 라즈베리파이

MCU는 한 칩 안에 CPU + 메모리 + 입출력 핀이 모두 들어 있는 작은 컴퓨터다. 일상의 거의 모든 전자기기에 들어 있다 — 세탁기·전자레인지·자동차·신호등·드론·로켓.

아두이노
🔌 Arduino UNO
CPU: ATmega328P 16MHz
메모리: 2KB RAM, 32KB Flash
핀: 14 디지털 + 6 아날로그
언어: C/C++ (Arduino IDE)
가격: 15,000원

실시간 단순 제어에 강함. 1ms 단위 정확한 타이밍. 학습용·센서 데이터 수집·로봇 제어에 적합.

라즈베리파이
🥧 Raspberry Pi 4
CPU: ARM 4코어 1.5GHz
메모리: 2~8GB RAM
OS: Linux (Raspbian)
언어: Python·Java·Web 등 자유
가격: 75,000원

완전한 컴퓨터. AI·영상 처리·웹 서버 가능. 카메라·OS 필요한 프로젝트에 적합.

💡 선택 기준: 단순 센서 측정 → 아두이노. 복잡한 처리·AI·영상 → 라즈베리파이. 이번 프로젝트는 아두이노로 충분.

📡 사용할 6가지 센서

센서 원리 매트릭스

센서측정 대상출력 신호기초 과학 원리
📏 HC-SR04 초음파거리디지털 (시간)음속 340m/s · 거리=속도×시간÷2
💡 LDR (광센서)밝기아날로그 (저항)반도체 광전 효과
🌡️ DHT22온·습도디지털 (펄스)정전용량 변화
🎤 MAX4466소리아날로그 (전압)압전 효과·진동→전기
🧭 MPU6050가속도·각속도I2C (디지털)MEMS 기계 변위→전기
🔵 BMP280기압·고도I2C압력 → 다이어프램 변형
PHASE 03

코드와 회로 — DO

초음파로 LIDAR 흉내내기

대표 예시로 HC-SR04 초음파 센서를 사용해 자율주행 LIDAR의 원리를 구현해 본다.

🔬 원리 — 자율주행 LIDAR의 축소판

① 송신기에서 초음파(40kHz) 발사 → ② 물체에 부딪혀 반사 → ③ 수신기가 받음 → ④ 왕복 시간 측정 → ⑤ 거리 = (속도 × 시간) ÷ 2

💻 핵심 코드 (Arduino C++)

// HC-SR04 초음파 센서로 거리 측정 — LIDAR의 원리
const int trigPin = 9; // 송신 핀
const int echoPin = 10; // 수신 핀

void setup() {
  Serial.begin(9600);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
}

void loop() {
  // 1. 10μs 펄스 발사
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // 2. 반사 신호 도착 시간 측정
  long duration = pulseIn(echoPin, HIGH);

  // 3. 거리 계산: 음속 340m/s = 0.034cm/μs, ÷2 (왕복)
  float distance = duration * 0.034 / 2;

  Serial.print("거리: ");
  Serial.print(distance);
  Serial.println(" cm");
  delay(100); // 10Hz 측정
}

이 코드를 작성·업로드한 후 시리얼 모니터를 열면 실시간 거리값이 표시된다. 손바닥을 센서 앞에서 움직이면 값이 변한다 — 자율주행차가 보는 세상과 같다.

PHASE 04

실시간 데이터 시각화 — DELIVER

측정값을 의미 있게

측정만으로는 부족하다. 데이터를 시각화하여 패턴을 발견하고 다른 사람에게 전달한다.

📊 실시간 데이터 시뮬레이션 — 4가지 센서

탭을 클릭해 다른 센서의 데이터를 봅니다. 자동으로 흐르는 시계열 데이터.
📏 거리 측정 (HC-SR04 초음파). 일정한 거리에서 측정값이 안정적이다. 손이 가까이 오면 거리가 감소. 이 원리로 자율주행차가 장애물을 피한다.
PHASE 05

실험 활동 — 모둠별 진행

기술 속 과학 추론
  1. 모둠별로 4가지 첨단 기술 중 하나를 선택한다 (자율주행·심박·IoT·음성인식).
  2. 해당 기술의 핵심 과학 원리를 조사하고 1쪽으로 정리한다. (위키·논문·유튜브 강의 참조)
  3. 해당 원리를 구현하기 위한 아두이노 + 센서 조합을 결정한다.
  4. 회로를 브레드보드에 연결하고 코드를 작성·업로드한다.
  5. 측정값을 시리얼 모니터로 확인하고, Excel/Python으로 실시간 그래프를 그린다.
  6. 다양한 상황에서 측정 데이터를 비교한다 (조용한 환경 vs 시끄러운 환경, 등).
  7. 측정 데이터로부터 첨단 기술이 어떻게 의사결정을 하는지 추론한다 (예: 자율주행차는 어떻게 멈출지 결정하는가?).
  8. 발표 자료 작성: ① 원리 ② 코드·회로 ③ 측정 결과 ④ 실제 적용 사례

📍 이 프로젝트에서 배우는 것

첨단 기술 = 기초 과학의 영리한 조합. 마법이 아니라 이미 배운 원리들의 결합.

측정의 정확성. 음속·빛속 같은 기초 상수가 정확해야 첨단 기술이 작동한다.

코드로 실험. 아두이노 코드 한 줄이 진짜 측정을 가능하게 한다.

시각화의 힘. 숫자만 보면 의미가 없다. 그래프로 봐야 패턴이 보인다.

📌 함께 생각해 보기

스마트폰 하나에는 10여 개의 센서(가속도·자이로·자기·근접·조도·기압·온도·지문·카메라·마이크·GPS)가 들어 있다. 우리는 매일 무심코 그것들을 사용한다. 다음번 스마트폰을 쓸 때, 그 안에 어떤 과학이 작동하고 있는지 한 번 떠올려 보라.

💭 한 단계 더

여러분이 만든 측정기에 한 가지 기능을 더 추가한다면 무엇이고, 왜 그것이 의미 있을까요? 다음 프로젝트(PRJ 05)에서 직접 시제품을 만들 준비를 시작해 보세요.